/**
 * pharma-business - 27 févr. 2011
 * guillaume
 */
package org.bspv.pharma.business.rules;

import java.util.List;

/**
 * @author guillaume
 * @param <T>
 *
 */
@SuppressWarnings("unchecked")
public abstract class AbstractListLeafSpecification<T> extends AbstractCompositeSpecification<List<T>> {

    /**
     * @see org.bspv.pharma.business.rules.Specification#isSatisfiedBy(java.lang.Object)
     */
    @Override
    public abstract boolean isSatisfiedBy(List<T> candidate);

    /**
     * Validation d'un element de la liste.
     * @param candidate Element à valider
     * @return 
     */
    public abstract boolean isElementSatisfiedBy(T candidate);
}
